package com.dianxin.smartpark.service.vo.common;

import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 返回设备用户信息及特征值
 */
public class SmartParkUserTzVO implements Serializable {
    /**
     * 员工id
     */
    private Long userId;

    /**
     * 用户类型 1员工 2访客
     */
    private Integer userType;

    /**
     * 姓名
     */
    private String userName;

    /**
     * 电话
     */
    private String phoneNum;

    /**
     * 人脸特征信息
     */
    private String characteristic;

    /**
     * 人脸排序
     */
    private long sort;

    /**
     * 授权开始日期
     */
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",
            timezone = "GMT+8")
    @JSONField(format="yyyy-MM-dd HH:mm:ss")
    private Date accessStartDate;

    /**
     * 授权结束日期
     */
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",
            timezone = "GMT+8")
    @JSONField(format="yyyy-MM-dd HH:mm:ss")
    private Date accessEndDate;

    /**
     * 身份证照片
     */
    private String idPhoto;

    /**
     * 更新时间
     */
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @JSONField(format="yyyy-MM-dd HH:mm:ss")
    private Date gmtModified;

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public Integer getUserType() {
        return userType;
    }

    public void setUserType(Integer userType) {
        this.userType = userType;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getPhoneNum() {
        return phoneNum;
    }

    public void setPhoneNum(String phoneNum) {
        this.phoneNum = phoneNum;
    }

    public String getCharacteristic() {
        return characteristic;
    }

    public void setCharacteristic(String characteristic) {
        this.characteristic = characteristic;
    }

    public Date getAccessStartDate() {
        return accessStartDate;
    }

    public void setAccessStartDate(Date accessStartDate) {
        this.accessStartDate = accessStartDate;
    }

    public Date getAccessEndDate() {
        return accessEndDate;
    }

    public void setAccessEndDate(Date accessEndDate) {
        this.accessEndDate = accessEndDate;
    }

    public Date getGmtModified() {
        return gmtModified;
    }

    public void setGmtModified(Date gmtModified) {
        this.gmtModified = gmtModified;
    }

    public String getIdPhoto() {
        return idPhoto;
    }

    public void setIdPhoto(String idPhoto) {
        this.idPhoto = idPhoto;
    }

    public long getSort() {
        return sort;
    }

    public void setSort(long sort) {
        this.sort = sort;
    }

    @Override
    public String toString() {
        return "SmartParkUserTzVO{" +
                "userId=" + userId +
                ", userType=" + userType +
                ", userName='" + userName + '\'' +
                ", phoneNum='" + phoneNum + '\'' +
                ", characteristic='" + characteristic + '\'' +
                ", sort=" + sort +
                ", accessStartDate=" + accessStartDate +
                ", accessEndDate=" + accessEndDate +
                ", idPhoto='" + idPhoto + '\'' +
                ", gmtModified=" + gmtModified +
                '}';
    }
}